/*
 * XML Type:  datastreamVersionType
 * Namespace: info:fedora/fedora-system:def/foxml#
 * Java type: fedora.fedoraSystemDef.foxml.DatastreamVersionType
 *
 * Automatically generated - do not modify.
 */
package fedora.fedoraSystemDef.foxml.impl;
/**
 * An XML datastreamVersionType(@info:fedora/fedora-system:def/foxml#).
 *
 * This is a complex type.
 */
public class DatastreamVersionTypeImpl extends org.apache.xmlbeans.impl.values.XmlComplexContentImpl implements fedora.fedoraSystemDef.foxml.DatastreamVersionType
{
    private static final long serialVersionUID = 1L;
    
    public DatastreamVersionTypeImpl(org.apache.xmlbeans.SchemaType sType)
    {
        super(sType);
    }
    
    private static final javax.xml.namespace.QName CONTENTDIGEST$0 = 
        new javax.xml.namespace.QName("info:fedora/fedora-system:def/foxml#", "contentDigest");
    private static final javax.xml.namespace.QName XMLCONTENT$2 = 
        new javax.xml.namespace.QName("info:fedora/fedora-system:def/foxml#", "xmlContent");
    private static final javax.xml.namespace.QName CONTENTLOCATION$4 = 
        new javax.xml.namespace.QName("info:fedora/fedora-system:def/foxml#", "contentLocation");
    private static final javax.xml.namespace.QName BINARYCONTENT$6 = 
        new javax.xml.namespace.QName("info:fedora/fedora-system:def/foxml#", "binaryContent");
    private static final javax.xml.namespace.QName ID$8 = 
        new javax.xml.namespace.QName("", "ID");
    private static final javax.xml.namespace.QName LABEL$10 = 
        new javax.xml.namespace.QName("", "LABEL");
    private static final javax.xml.namespace.QName CREATED$12 = 
        new javax.xml.namespace.QName("", "CREATED");
    private static final javax.xml.namespace.QName MIMETYPE$14 = 
        new javax.xml.namespace.QName("", "MIMETYPE");
    private static final javax.xml.namespace.QName ALTIDS$16 = 
        new javax.xml.namespace.QName("", "ALT_IDS");
    private static final javax.xml.namespace.QName FORMATURI$18 = 
        new javax.xml.namespace.QName("", "FORMAT_URI");
    private static final javax.xml.namespace.QName SIZE$20 = 
        new javax.xml.namespace.QName("", "SIZE");
    
    
    /**
     * Gets the "contentDigest" element
     */
    public fedora.fedoraSystemDef.foxml.ContentDigestType getContentDigest()
    {
        synchronized (monitor())
        {
            check_orphaned();
            fedora.fedoraSystemDef.foxml.ContentDigestType target = null;
            target = (fedora.fedoraSystemDef.foxml.ContentDigestType)get_store().find_element_user(CONTENTDIGEST$0, 0);
            if (target == null)
            {
                return null;
            }
            return target;
        }
    }
    
    /**
     * True if has "contentDigest" element
     */
    public boolean isSetContentDigest()
    {
        synchronized (monitor())
        {
            check_orphaned();
            return get_store().count_elements(CONTENTDIGEST$0) != 0;
        }
    }
    
    /**
     * Sets the "contentDigest" element
     */
    public void setContentDigest(fedora.fedoraSystemDef.foxml.ContentDigestType contentDigest)
    {
        synchronized (monitor())
        {
            check_orphaned();
            fedora.fedoraSystemDef.foxml.ContentDigestType target = null;
            target = (fedora.fedoraSystemDef.foxml.ContentDigestType)get_store().find_element_user(CONTENTDIGEST$0, 0);
            if (target == null)
            {
                target = (fedora.fedoraSystemDef.foxml.ContentDigestType)get_store().add_element_user(CONTENTDIGEST$0);
            }
            target.set(contentDigest);
        }
    }
    
    /**
     * Appends and returns a new empty "contentDigest" element
     */
    public fedora.fedoraSystemDef.foxml.ContentDigestType addNewContentDigest()
    {
        synchronized (monitor())
        {
            check_orphaned();
            fedora.fedoraSystemDef.foxml.ContentDigestType target = null;
            target = (fedora.fedoraSystemDef.foxml.ContentDigestType)get_store().add_element_user(CONTENTDIGEST$0);
            return target;
        }
    }
    
    /**
     * Unsets the "contentDigest" element
     */
    public void unsetContentDigest()
    {
        synchronized (monitor())
        {
            check_orphaned();
            get_store().remove_element(CONTENTDIGEST$0, 0);
        }
    }
    
    /**
     * Gets the "xmlContent" element
     */
    public fedora.fedoraSystemDef.foxml.XmlContentType getXmlContent()
    {
        synchronized (monitor())
        {
            check_orphaned();
            fedora.fedoraSystemDef.foxml.XmlContentType target = null;
            target = (fedora.fedoraSystemDef.foxml.XmlContentType)get_store().find_element_user(XMLCONTENT$2, 0);
            if (target == null)
            {
                return null;
            }
            return target;
        }
    }
    
    /**
     * True if has "xmlContent" element
     */
    public boolean isSetXmlContent()
    {
        synchronized (monitor())
        {
            check_orphaned();
            return get_store().count_elements(XMLCONTENT$2) != 0;
        }
    }
    
    /**
     * Sets the "xmlContent" element
     */
    public void setXmlContent(fedora.fedoraSystemDef.foxml.XmlContentType xmlContent)
    {
        synchronized (monitor())
        {
            check_orphaned();
            fedora.fedoraSystemDef.foxml.XmlContentType target = null;
            target = (fedora.fedoraSystemDef.foxml.XmlContentType)get_store().find_element_user(XMLCONTENT$2, 0);
            if (target == null)
            {
                target = (fedora.fedoraSystemDef.foxml.XmlContentType)get_store().add_element_user(XMLCONTENT$2);
            }
            target.set(xmlContent);
        }
    }
    
    /**
     * Appends and returns a new empty "xmlContent" element
     */
    public fedora.fedoraSystemDef.foxml.XmlContentType addNewXmlContent()
    {
        synchronized (monitor())
        {
            check_orphaned();
            fedora.fedoraSystemDef.foxml.XmlContentType target = null;
            target = (fedora.fedoraSystemDef.foxml.XmlContentType)get_store().add_element_user(XMLCONTENT$2);
            return target;
        }
    }
    
    /**
     * Unsets the "xmlContent" element
     */
    public void unsetXmlContent()
    {
        synchronized (monitor())
        {
            check_orphaned();
            get_store().remove_element(XMLCONTENT$2, 0);
        }
    }
    
    /**
     * Gets the "contentLocation" element
     */
    public fedora.fedoraSystemDef.foxml.ContentLocationType getContentLocation()
    {
        synchronized (monitor())
        {
            check_orphaned();
            fedora.fedoraSystemDef.foxml.ContentLocationType target = null;
            target = (fedora.fedoraSystemDef.foxml.ContentLocationType)get_store().find_element_user(CONTENTLOCATION$4, 0);
            if (target == null)
            {
                return null;
            }
            return target;
        }
    }
    
    /**
     * True if has "contentLocation" element
     */
    public boolean isSetContentLocation()
    {
        synchronized (monitor())
        {
            check_orphaned();
            return get_store().count_elements(CONTENTLOCATION$4) != 0;
        }
    }
    
    /**
     * Sets the "contentLocation" element
     */
    public void setContentLocation(fedora.fedoraSystemDef.foxml.ContentLocationType contentLocation)
    {
        synchronized (monitor())
        {
            check_orphaned();
            fedora.fedoraSystemDef.foxml.ContentLocationType target = null;
            target = (fedora.fedoraSystemDef.foxml.ContentLocationType)get_store().find_element_user(CONTENTLOCATION$4, 0);
            if (target == null)
            {
                target = (fedora.fedoraSystemDef.foxml.ContentLocationType)get_store().add_element_user(CONTENTLOCATION$4);
            }
            target.set(contentLocation);
        }
    }
    
    /**
     * Appends and returns a new empty "contentLocation" element
     */
    public fedora.fedoraSystemDef.foxml.ContentLocationType addNewContentLocation()
    {
        synchronized (monitor())
        {
            check_orphaned();
            fedora.fedoraSystemDef.foxml.ContentLocationType target = null;
            target = (fedora.fedoraSystemDef.foxml.ContentLocationType)get_store().add_element_user(CONTENTLOCATION$4);
            return target;
        }
    }
    
    /**
     * Unsets the "contentLocation" element
     */
    public void unsetContentLocation()
    {
        synchronized (monitor())
        {
            check_orphaned();
            get_store().remove_element(CONTENTLOCATION$4, 0);
        }
    }
    
    /**
     * Gets the "binaryContent" element
     */
    public byte[] getBinaryContent()
    {
        synchronized (monitor())
        {
            check_orphaned();
            org.apache.xmlbeans.SimpleValue target = null;
            target = (org.apache.xmlbeans.SimpleValue)get_store().find_element_user(BINARYCONTENT$6, 0);
            if (target == null)
            {
                return null;
            }
            return target.getByteArrayValue();
        }
    }
    
    /**
     * Gets (as xml) the "binaryContent" element
     */
    public org.apache.xmlbeans.XmlBase64Binary xgetBinaryContent()
    {
        synchronized (monitor())
        {
            check_orphaned();
            org.apache.xmlbeans.XmlBase64Binary target = null;
            target = (org.apache.xmlbeans.XmlBase64Binary)get_store().find_element_user(BINARYCONTENT$6, 0);
            return target;
        }
    }
    
    /**
     * True if has "binaryContent" element
     */
    public boolean isSetBinaryContent()
    {
        synchronized (monitor())
        {
            check_orphaned();
            return get_store().count_elements(BINARYCONTENT$6) != 0;
        }
    }
    
    /**
     * Sets the "binaryContent" element
     */
    public void setBinaryContent(byte[] binaryContent)
    {
        synchronized (monitor())
        {
            check_orphaned();
            org.apache.xmlbeans.SimpleValue target = null;
            target = (org.apache.xmlbeans.SimpleValue)get_store().find_element_user(BINARYCONTENT$6, 0);
            if (target == null)
            {
                target = (org.apache.xmlbeans.SimpleValue)get_store().add_element_user(BINARYCONTENT$6);
            }
            target.setByteArrayValue(binaryContent);
        }
    }
    
    /**
     * Sets (as xml) the "binaryContent" element
     */
    public void xsetBinaryContent(org.apache.xmlbeans.XmlBase64Binary binaryContent)
    {
        synchronized (monitor())
        {
            check_orphaned();
            org.apache.xmlbeans.XmlBase64Binary target = null;
            target = (org.apache.xmlbeans.XmlBase64Binary)get_store().find_element_user(BINARYCONTENT$6, 0);
            if (target == null)
            {
                target = (org.apache.xmlbeans.XmlBase64Binary)get_store().add_element_user(BINARYCONTENT$6);
            }
            target.set(binaryContent);
        }
    }
    
    /**
     * Unsets the "binaryContent" element
     */
    public void unsetBinaryContent()
    {
        synchronized (monitor())
        {
            check_orphaned();
            get_store().remove_element(BINARYCONTENT$6, 0);
        }
    }
    
    /**
     * Gets the "ID" attribute
     */
    public java.lang.String getID()
    {
        synchronized (monitor())
        {
            check_orphaned();
            org.apache.xmlbeans.SimpleValue target = null;
            target = (org.apache.xmlbeans.SimpleValue)get_store().find_attribute_user(ID$8);
            if (target == null)
            {
                return null;
            }
            return target.getStringValue();
        }
    }
    
    /**
     * Gets (as xml) the "ID" attribute
     */
    public fedora.fedoraSystemDef.foxml.IdType xgetID()
    {
        synchronized (monitor())
        {
            check_orphaned();
            fedora.fedoraSystemDef.foxml.IdType target = null;
            target = (fedora.fedoraSystemDef.foxml.IdType)get_store().find_attribute_user(ID$8);
            return target;
        }
    }
    
    /**
     * Sets the "ID" attribute
     */
    public void setID(java.lang.String id)
    {
        synchronized (monitor())
        {
            check_orphaned();
            org.apache.xmlbeans.SimpleValue target = null;
            target = (org.apache.xmlbeans.SimpleValue)get_store().find_attribute_user(ID$8);
            if (target == null)
            {
                target = (org.apache.xmlbeans.SimpleValue)get_store().add_attribute_user(ID$8);
            }
            target.setStringValue(id);
        }
    }
    
    /**
     * Sets (as xml) the "ID" attribute
     */
    public void xsetID(fedora.fedoraSystemDef.foxml.IdType id)
    {
        synchronized (monitor())
        {
            check_orphaned();
            fedora.fedoraSystemDef.foxml.IdType target = null;
            target = (fedora.fedoraSystemDef.foxml.IdType)get_store().find_attribute_user(ID$8);
            if (target == null)
            {
                target = (fedora.fedoraSystemDef.foxml.IdType)get_store().add_attribute_user(ID$8);
            }
            target.set(id);
        }
    }
    
    /**
     * Gets the "LABEL" attribute
     */
    public java.lang.String getLABEL()
    {
        synchronized (monitor())
        {
            check_orphaned();
            org.apache.xmlbeans.SimpleValue target = null;
            target = (org.apache.xmlbeans.SimpleValue)get_store().find_attribute_user(LABEL$10);
            if (target == null)
            {
                return null;
            }
            return target.getStringValue();
        }
    }
    
    /**
     * Gets (as xml) the "LABEL" attribute
     */
    public org.apache.xmlbeans.XmlString xgetLABEL()
    {
        synchronized (monitor())
        {
            check_orphaned();
            org.apache.xmlbeans.XmlString target = null;
            target = (org.apache.xmlbeans.XmlString)get_store().find_attribute_user(LABEL$10);
            return target;
        }
    }
    
    /**
     * True if has "LABEL" attribute
     */
    public boolean isSetLABEL()
    {
        synchronized (monitor())
        {
            check_orphaned();
            return get_store().find_attribute_user(LABEL$10) != null;
        }
    }
    
    /**
     * Sets the "LABEL" attribute
     */
    public void setLABEL(java.lang.String label)
    {
        synchronized (monitor())
        {
            check_orphaned();
            org.apache.xmlbeans.SimpleValue target = null;
            target = (org.apache.xmlbeans.SimpleValue)get_store().find_attribute_user(LABEL$10);
            if (target == null)
            {
                target = (org.apache.xmlbeans.SimpleValue)get_store().add_attribute_user(LABEL$10);
            }
            target.setStringValue(label);
        }
    }
    
    /**
     * Sets (as xml) the "LABEL" attribute
     */
    public void xsetLABEL(org.apache.xmlbeans.XmlString label)
    {
        synchronized (monitor())
        {
            check_orphaned();
            org.apache.xmlbeans.XmlString target = null;
            target = (org.apache.xmlbeans.XmlString)get_store().find_attribute_user(LABEL$10);
            if (target == null)
            {
                target = (org.apache.xmlbeans.XmlString)get_store().add_attribute_user(LABEL$10);
            }
            target.set(label);
        }
    }
    
    /**
     * Unsets the "LABEL" attribute
     */
    public void unsetLABEL()
    {
        synchronized (monitor())
        {
            check_orphaned();
            get_store().remove_attribute(LABEL$10);
        }
    }
    
    /**
     * Gets the "CREATED" attribute
     */
    public java.util.Calendar getCREATED()
    {
        synchronized (monitor())
        {
            check_orphaned();
            org.apache.xmlbeans.SimpleValue target = null;
            target = (org.apache.xmlbeans.SimpleValue)get_store().find_attribute_user(CREATED$12);
            if (target == null)
            {
                return null;
            }
            return target.getCalendarValue();
        }
    }
    
    /**
     * Gets (as xml) the "CREATED" attribute
     */
    public org.apache.xmlbeans.XmlDateTime xgetCREATED()
    {
        synchronized (monitor())
        {
            check_orphaned();
            org.apache.xmlbeans.XmlDateTime target = null;
            target = (org.apache.xmlbeans.XmlDateTime)get_store().find_attribute_user(CREATED$12);
            return target;
        }
    }
    
    /**
     * True if has "CREATED" attribute
     */
    public boolean isSetCREATED()
    {
        synchronized (monitor())
        {
            check_orphaned();
            return get_store().find_attribute_user(CREATED$12) != null;
        }
    }
    
    /**
     * Sets the "CREATED" attribute
     */
    public void setCREATED(java.util.Calendar created)
    {
        synchronized (monitor())
        {
            check_orphaned();
            org.apache.xmlbeans.SimpleValue target = null;
            target = (org.apache.xmlbeans.SimpleValue)get_store().find_attribute_user(CREATED$12);
            if (target == null)
            {
                target = (org.apache.xmlbeans.SimpleValue)get_store().add_attribute_user(CREATED$12);
            }
            target.setCalendarValue(created);
        }
    }
    
    /**
     * Sets (as xml) the "CREATED" attribute
     */
    public void xsetCREATED(org.apache.xmlbeans.XmlDateTime created)
    {
        synchronized (monitor())
        {
            check_orphaned();
            org.apache.xmlbeans.XmlDateTime target = null;
            target = (org.apache.xmlbeans.XmlDateTime)get_store().find_attribute_user(CREATED$12);
            if (target == null)
            {
                target = (org.apache.xmlbeans.XmlDateTime)get_store().add_attribute_user(CREATED$12);
            }
            target.set(created);
        }
    }
    
    /**
     * Unsets the "CREATED" attribute
     */
    public void unsetCREATED()
    {
        synchronized (monitor())
        {
            check_orphaned();
            get_store().remove_attribute(CREATED$12);
        }
    }
    
    /**
     * Gets the "MIMETYPE" attribute
     */
    public java.lang.String getMIMETYPE()
    {
        synchronized (monitor())
        {
            check_orphaned();
            org.apache.xmlbeans.SimpleValue target = null;
            target = (org.apache.xmlbeans.SimpleValue)get_store().find_attribute_user(MIMETYPE$14);
            if (target == null)
            {
                return null;
            }
            return target.getStringValue();
        }
    }
    
    /**
     * Gets (as xml) the "MIMETYPE" attribute
     */
    public org.apache.xmlbeans.XmlString xgetMIMETYPE()
    {
        synchronized (monitor())
        {
            check_orphaned();
            org.apache.xmlbeans.XmlString target = null;
            target = (org.apache.xmlbeans.XmlString)get_store().find_attribute_user(MIMETYPE$14);
            return target;
        }
    }
    
    /**
     * Sets the "MIMETYPE" attribute
     */
    public void setMIMETYPE(java.lang.String mimetype)
    {
        synchronized (monitor())
        {
            check_orphaned();
            org.apache.xmlbeans.SimpleValue target = null;
            target = (org.apache.xmlbeans.SimpleValue)get_store().find_attribute_user(MIMETYPE$14);
            if (target == null)
            {
                target = (org.apache.xmlbeans.SimpleValue)get_store().add_attribute_user(MIMETYPE$14);
            }
            target.setStringValue(mimetype);
        }
    }
    
    /**
     * Sets (as xml) the "MIMETYPE" attribute
     */
    public void xsetMIMETYPE(org.apache.xmlbeans.XmlString mimetype)
    {
        synchronized (monitor())
        {
            check_orphaned();
            org.apache.xmlbeans.XmlString target = null;
            target = (org.apache.xmlbeans.XmlString)get_store().find_attribute_user(MIMETYPE$14);
            if (target == null)
            {
                target = (org.apache.xmlbeans.XmlString)get_store().add_attribute_user(MIMETYPE$14);
            }
            target.set(mimetype);
        }
    }
    
    /**
     * Gets the "ALT_IDS" attribute
     */
    @SuppressWarnings({ "rawtypes" })
	public java.util.List getALTIDS()
    {
        synchronized (monitor())
        {
            check_orphaned();
            org.apache.xmlbeans.SimpleValue target = null;
            target = (org.apache.xmlbeans.SimpleValue)get_store().find_attribute_user(ALTIDS$16);
            if (target == null)
            {
                return null;
            }
            return target.getListValue();
        }
    }
    
    /**
     * Gets (as xml) the "ALT_IDS" attribute
     */
    public fedora.fedoraSystemDef.foxml.UriListType xgetALTIDS()
    {
        synchronized (monitor())
        {
            check_orphaned();
            fedora.fedoraSystemDef.foxml.UriListType target = null;
            target = (fedora.fedoraSystemDef.foxml.UriListType)get_store().find_attribute_user(ALTIDS$16);
            return target;
        }
    }
    
    /**
     * True if has "ALT_IDS" attribute
     */
    public boolean isSetALTIDS()
    {
        synchronized (monitor())
        {
            check_orphaned();
            return get_store().find_attribute_user(ALTIDS$16) != null;
        }
    }
    
    /**
     * Sets the "ALT_IDS" attribute
     */
    @SuppressWarnings("rawtypes")
	public void setALTIDS(java.util.List altids)
    {
        synchronized (monitor())
        {
            check_orphaned();
            org.apache.xmlbeans.SimpleValue target = null;
            target = (org.apache.xmlbeans.SimpleValue)get_store().find_attribute_user(ALTIDS$16);
            if (target == null)
            {
                target = (org.apache.xmlbeans.SimpleValue)get_store().add_attribute_user(ALTIDS$16);
            }
            target.setListValue(altids);
        }
    }
    
    /**
     * Sets (as xml) the "ALT_IDS" attribute
     */
    public void xsetALTIDS(fedora.fedoraSystemDef.foxml.UriListType altids)
    {
        synchronized (monitor())
        {
            check_orphaned();
            fedora.fedoraSystemDef.foxml.UriListType target = null;
            target = (fedora.fedoraSystemDef.foxml.UriListType)get_store().find_attribute_user(ALTIDS$16);
            if (target == null)
            {
                target = (fedora.fedoraSystemDef.foxml.UriListType)get_store().add_attribute_user(ALTIDS$16);
            }
            target.set(altids);
        }
    }
    
    /**
     * Unsets the "ALT_IDS" attribute
     */
    public void unsetALTIDS()
    {
        synchronized (monitor())
        {
            check_orphaned();
            get_store().remove_attribute(ALTIDS$16);
        }
    }
    
    /**
     * Gets the "FORMAT_URI" attribute
     */
    public java.lang.String getFORMATURI()
    {
        synchronized (monitor())
        {
            check_orphaned();
            org.apache.xmlbeans.SimpleValue target = null;
            target = (org.apache.xmlbeans.SimpleValue)get_store().find_attribute_user(FORMATURI$18);
            if (target == null)
            {
                return null;
            }
            return target.getStringValue();
        }
    }
    
    /**
     * Gets (as xml) the "FORMAT_URI" attribute
     */
    public org.apache.xmlbeans.XmlAnyURI xgetFORMATURI()
    {
        synchronized (monitor())
        {
            check_orphaned();
            org.apache.xmlbeans.XmlAnyURI target = null;
            target = (org.apache.xmlbeans.XmlAnyURI)get_store().find_attribute_user(FORMATURI$18);
            return target;
        }
    }
    
    /**
     * True if has "FORMAT_URI" attribute
     */
    public boolean isSetFORMATURI()
    {
        synchronized (monitor())
        {
            check_orphaned();
            return get_store().find_attribute_user(FORMATURI$18) != null;
        }
    }
    
    /**
     * Sets the "FORMAT_URI" attribute
     */
    public void setFORMATURI(java.lang.String formaturi)
    {
        synchronized (monitor())
        {
            check_orphaned();
            org.apache.xmlbeans.SimpleValue target = null;
            target = (org.apache.xmlbeans.SimpleValue)get_store().find_attribute_user(FORMATURI$18);
            if (target == null)
            {
                target = (org.apache.xmlbeans.SimpleValue)get_store().add_attribute_user(FORMATURI$18);
            }
            target.setStringValue(formaturi);
        }
    }
    
    /**
     * Sets (as xml) the "FORMAT_URI" attribute
     */
    public void xsetFORMATURI(org.apache.xmlbeans.XmlAnyURI formaturi)
    {
        synchronized (monitor())
        {
            check_orphaned();
            org.apache.xmlbeans.XmlAnyURI target = null;
            target = (org.apache.xmlbeans.XmlAnyURI)get_store().find_attribute_user(FORMATURI$18);
            if (target == null)
            {
                target = (org.apache.xmlbeans.XmlAnyURI)get_store().add_attribute_user(FORMATURI$18);
            }
            target.set(formaturi);
        }
    }
    
    /**
     * Unsets the "FORMAT_URI" attribute
     */
    public void unsetFORMATURI()
    {
        synchronized (monitor())
        {
            check_orphaned();
            get_store().remove_attribute(FORMATURI$18);
        }
    }
    
    /**
     * Gets the "SIZE" attribute
     */
    public long getSIZE()
    {
        synchronized (monitor())
        {
            check_orphaned();
            org.apache.xmlbeans.SimpleValue target = null;
            target = (org.apache.xmlbeans.SimpleValue)get_store().find_attribute_user(SIZE$20);
            if (target == null)
            {
                target = (org.apache.xmlbeans.SimpleValue)get_default_attribute_value(SIZE$20);
            }
            if (target == null)
            {
                return 0L;
            }
            return target.getLongValue();
        }
    }
    
    /**
     * Gets (as xml) the "SIZE" attribute
     */
    public org.apache.xmlbeans.XmlLong xgetSIZE()
    {
        synchronized (monitor())
        {
            check_orphaned();
            org.apache.xmlbeans.XmlLong target = null;
            target = (org.apache.xmlbeans.XmlLong)get_store().find_attribute_user(SIZE$20);
            if (target == null)
            {
                target = (org.apache.xmlbeans.XmlLong)get_default_attribute_value(SIZE$20);
            }
            return target;
        }
    }
    
    /**
     * True if has "SIZE" attribute
     */
    public boolean isSetSIZE()
    {
        synchronized (monitor())
        {
            check_orphaned();
            return get_store().find_attribute_user(SIZE$20) != null;
        }
    }
    
    /**
     * Sets the "SIZE" attribute
     */
    public void setSIZE(long size)
    {
        synchronized (monitor())
        {
            check_orphaned();
            org.apache.xmlbeans.SimpleValue target = null;
            target = (org.apache.xmlbeans.SimpleValue)get_store().find_attribute_user(SIZE$20);
            if (target == null)
            {
                target = (org.apache.xmlbeans.SimpleValue)get_store().add_attribute_user(SIZE$20);
            }
            target.setLongValue(size);
        }
    }
    
    /**
     * Sets (as xml) the "SIZE" attribute
     */
    public void xsetSIZE(org.apache.xmlbeans.XmlLong size)
    {
        synchronized (monitor())
        {
            check_orphaned();
            org.apache.xmlbeans.XmlLong target = null;
            target = (org.apache.xmlbeans.XmlLong)get_store().find_attribute_user(SIZE$20);
            if (target == null)
            {
                target = (org.apache.xmlbeans.XmlLong)get_store().add_attribute_user(SIZE$20);
            }
            target.set(size);
        }
    }
    
    /**
     * Unsets the "SIZE" attribute
     */
    public void unsetSIZE()
    {
        synchronized (monitor())
        {
            check_orphaned();
            get_store().remove_attribute(SIZE$20);
        }
    }
}
